
package de.previsor.workflow.model;


import java.util.ArrayList;
import java.util.Iterator;

/**
 * @author Michael Müller
 * 
 * Die Klasse TempData regelt die Verwaltung von temporären Daten,
 * die für die Nutzung des Tools nötig sind.
 * So werden z.B. Nutzerdaten, Daten der Kollegen anfangs initialisiert
 * und müssen später nicht vereinzelt durch Datenbankabfragen eingeholt werden.
 * 
 * Datum: 13.11.2014
 */
public class TempData {
    // Die eigenen Daten des angemeldeten Nutzers
    public static Mitarbeiter benutzer;
    
    // Daten der Projektkollegen
    public static ArrayList<Mitarbeiter> kollegen = new ArrayList<Mitarbeiter>();
    // Liste von Kollegen und dem eingeloggten
    public static ArrayList<Mitarbeiter> alle     = new ArrayList<Mitarbeiter>();
    
    // Definieren des Lineseperators abhängig vom System
    public final static String lisa = System.getProperty("line.separator");

    /*
    * Setter-Methoden können genutzt werden wenn sich die Daten
    * im Laufe des Betriebes ändern
    */
    // setzt die Daten des eingeloggten Benutzers
    public static void setBenutzer(Mitarbeiter b)
    {
        alle.clear();
        benutzer = b; 
        alle.add(b);
    }
    
    // Setzt die Daten der weiteren Mitarbeiter
    public static void setKollegen(ArrayList<String[]> koll)
    {
        Iterator<String[]> iter = koll.iterator();
        
        
        while( iter.hasNext() )
        {
            Mitarbeiter k =  new Mitarbeiter(iter.next());
         // kollegen.add(new Mitarbeiter(iter.next()));        
           kollegen.add(k); 
           alle.add(k);
        }
        
                  
    }
    
    /*
    * Getter Methoden 
    */
    
    // gibt den Datentyp "Mitarbeiter" des aktuellen eingeloggten Nutzers zurück
    public static Mitarbeiter getBenutzer()
    {
        return benutzer;
    }
    
    // Gibt Daten der gesamten Kollegen als ArrayList<Mitarbeiter> zurück
    public static ArrayList<Mitarbeiter> getKollegen()
    {
        return kollegen;
    }
    
        // Gibt Daten der gesamten Mitarbeiter (Kollegen + eingeloggter User) als ArrayList<Mitarbeiter> zurück
    public static ArrayList<Mitarbeiter> getAllMitarbeiter()
    {
        return alle;
    }
} // END - CLASS
